Simultaneous Localization and Mapping (SLAM) is a topic of high interest in the robotics community. The ability for a robotic system to map an unknown environment while locating itself and others within the environment is of great use in robotics and navigation in general. It is especially helpful in areas where GPS technology cannot function, such as indoor environments, urban canyons, and caves. The idea of SLAM was introduced at the 1986 IEEE Robotics and Automation Conference in San Francisco, Calif., where researchers Peter Cheeseman, Jim Crowley, and Hugh Durrant-Whyte began looking at robotics and applying estimation-theoretic methods to mapping and localization[1]. Several others aided in the creation of SLAM, such as Raja Chatila, Oliver Faugeras, and Randal Smith, among others [1].
At a theoretical and conceptual level, SLAM is considered a solved problem. Many successful implementations, using sonar, laser ranger-finders, or visual sensors, exist [2] [3]. SLAM has been formulated and solved theoretically in various forms. However, substantial practical issues remain in realizing more general SLAM solutions, notably those that relate to constructing and using perceptually rich maps as part of a SLAM algorithm [1]. For large-scale and complex environments, especially those requiring full 3D mapping, the SLAM problem is still an open research issue [4]. Most SLAM solutions work in small areas, on a 2D surface with 2D landmarks. The introduction of a third dimension in either landmark state or robot state complicates traditional SLAM solutions [4].
Generally, SLAM techniques are driven by exteroceptive sensors such as cameras, laser range finders, sonars, and proprioceptive sensors (for example, wheel encoders, gyroscopes, and accelerometers) [5]. FIG. 1 shows the basics of the SLAM problem: a robot travels in an unknown environment, estimating its own position and its position relative to several landmarks in the area. It maps its position and the landmarks around it in successive iterations based on new observations. The problem of SLAM can be defined using the theory of uncertain geometry [6]. There are two important elements in uncertain geometry: the actual geometry of structures, and the overall topology of relations between geometric structures. With uncertain geometry, the representation by a parameterized function and a probability density of all geometric locations and features provides a simple means of describing geometric uncertainty. Using this representation, the analysis of uncertain geometry can be reduced to a problem in the transformation and manipulation of random variables [6]. The key elements of uncertain geometry theory are providing a homogeneous description of uncertain geometric features, developing procedures to transform and manipulate these descriptions, and supplying a mechanism for the consistent interpretation of relations between uncertain features [6].
According to [7], navigation problems can be categorized into several sub-problems. First, there is the distinction between indoor and outdoor navigation. Indoor navigation is composed of three sub-types: map-based navigation, map-building navigation, and map-less navigation. Map-based navigation systems depend on user-created geometric models or topological maps of the environment. Map-building-based navigation systems use sensors to construct their own geometric or topological models of the environment and then use their models for navigation. Map-less navigation systems use no explicit representation of the space in which navigation is to take place. Rather, they rely on recognizing objects found in their environment. Outdoor navigation can be divided into two classes according to the structural level of the environment. There are structured environments, such as road systems and urban landscapes, and there are unstructured environments, such as terrain and planet surfaces. Only map-building-based navigation, which is the core of SLAM, and map-less navigation, are considered herein, in the context of indoor environments.
According to [8], large-scale SLAM, which consists of maps with more than a few thousand landmarks or maps that traverse over distances greater than a hundred meters poses three main challenges. The first is algorithmic complexity, which is inherent in any application that handles thousands of pieces of information. The second is a consistency issue, whereby we have estimation techniques inhibited and weakened by large distances, the consideration of 3D motions, and sensor noise in general. The third difficulty is the loop-closing detection and feature matching issue. Loop-closing involved recognizing that the robot has returned to a mapped area, and propagating corrections to the entire map correcting any inconsistency. Loop-closing and feature matching in general are difficult to solve using landmark and robot position estimates alone, since they tend to be inconsistent over long distances.
There are four general background areas relevant to the embodiments described herein. The first area involves fusing inertial and visual sensors. The second area involves SLAM in general, covering many sub-topics, including Kalman Filters, Particle Filters, and various types of SLAM that use different sensing techniques. The third area involves cooperative control and map coverage, specifically how others in robotics and SLAM fields have handled cooperative control. The fourth area involves landmark acquisition, visual descriptors, and feature tracking. These four areas are relatively well known to those of ordinary skill in the art and are addressed in varying degrees by references [1] through [8]:    [1] Hugh Durrant-Whyte and Time Bailey, “Simultaneous Localization and Mapping: Part I,” Robotics & Automation Magazine, vol. 13, no. 2, pp. 99-110, June 2006.    [2] S. Thrun, D. Fox, and W. Burgard, “A probabilistic approach to concurrent mapping and localization formobile robotics,” Machine Learning, p. 31, 1998.    [3] K. S. Chong and L. Kleeman, “Feature-based mapping in real, large scale environments using an ultrasonic array,” International Journal of Robotics Research, pp. 3-19, January 1999.    [4] P. Jensfelt, D. Kragic, J. Folkesson, and M. Björkman, “A Framework for Vision Based Bearing Only 3D SLAM,” in Internation Conference on Robotics and Automation, 2006, p. 1564-1570.    [5] Anastasios I. Mourikis, Stergios I. Roumeliotis, and Joel W. Burdick, “SC-KF Mobile Robot Localization: A Stochastic Cloning Kalman Filter for Processing Relative-State Measurements,” in Transactions on Robotics, 2007, pp. 717-730.    [6] Hugh F. Durrant-Whyte, “Uncertain Geometry in Robotics,” IEEE Journal of Robotics and Automation, pp. 23-31, 1988.    [7] Guilherme N. DeSouza and Avinash C. Kak, “Vision for Mobile Robot Navigation: A Survey,” in Transactions on Pattern Analysis and Machine Intelligence, 2002, pp. 237-267.    [8] Thomas Lemaire and Simon Lacroix, “SLAM with Panoramic Vision,” Journal of Field Robotics, vol. 24, no. 1-2, pp. 91-111, February 2007.